Копирует текущую запись.
[id(103444)] HRESULT Copy( [in, optional] VARIANT KeyValue );
|
Параметры |
Описание |
|
KeyValue |
Ключевое поле |
Выполняет копирование записи по следующему алгоритму:
|
№ |
Описание |
|
1. |
Если набор данных не находится в состоянии добавления записи (значение свойства IDataset::State не равно "dstInsert"), и у текущего пользователя есть права на добавление записи (значение свойства IDataset::CanInsert равно "True"), то вызывает событие IDatasetEvents::OnDatasetBeforeCopy. Иначе метод завершает работу. |
|
2. |
Если в событии IDatasetEvents::OnDatasetBeforeCopy копирование записи не было отменено, то метод вызывает событие IDatasetEvents::OnDatasetBeforePositionChange. Свойству IDataset::IsInCopy устанавливает значение "True". Иначе метод завершает работу. |
|
3. |
Создает копию текущей записи, устанавливает ее текущей и переводит набор данных в состояние добавления записи (свойству IDataset::State устанавливает значение "dstInsert"). Свойству IDataset::IsInCopy устанавливает значение "False". |
|
4. |
Вызывает событие IDatasetEvents::OnDatasetAfterCopy. |
|
5. |
Вызывает событие IDatasetEvents::OnDatasetAfterPositionChange. |
|
6. |
Возвращает "True", если копирование записи выполнено успешно. Иначе возвращает "False". |
|
№ |
Описание |
|
1. |
Если на любом из шагов алгоритма копирования записи возникает ошибка, метод вызывает событие IDatasetEvents::OnDatasetError. |
|
Copyright (с) Terrasoft 2002-2012.
|